package com.eshop.modules.order.param;

import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;

public class ExpressParam implements Serializable
{
    @ApiModelProperty("订单编号")
    private String orderCode;
    @ApiModelProperty("快递公司编码")
    private String shipperCode;
    @ApiModelProperty("物流单号")
    private String logisticCode;
    
    public String getOrderCode() {
        return this.orderCode;
    }
    
    public String getShipperCode() {
        return this.shipperCode;
    }
    
    public String getLogisticCode() {
        return this.logisticCode;
    }
    
    public void setOrderCode(final String orderCode) {
        this.orderCode = orderCode;
    }
    
    public void setShipperCode(final String shipperCode) {
        this.shipperCode = shipperCode;
    }
    
    public void setLogisticCode(final String logisticCode) {
        this.logisticCode = logisticCode;
    }
    
    @Override
    public boolean equals(final Object o) {
        if (o == this) {
            return true;
        }
        if (!(o instanceof ExpressParam)) {
            return false;
        }
        final ExpressParam other = (ExpressParam)o;
        if (!other.canEqual(this)) {
            return false;
        }
        final Object this$orderCode = this.getOrderCode();
        final Object other$orderCode = other.getOrderCode();
        Label_0065: {
            if (this$orderCode == null) {
                if (other$orderCode == null) {
                    break Label_0065;
                }
            }
            else if (this$orderCode.equals(other$orderCode)) {
                break Label_0065;
            }
            return false;
        }
        final Object this$shipperCode = this.getShipperCode();
        final Object other$shipperCode = other.getShipperCode();
        Label_0102: {
            if (this$shipperCode == null) {
                if (other$shipperCode == null) {
                    break Label_0102;
                }
            }
            else if (this$shipperCode.equals(other$shipperCode)) {
                break Label_0102;
            }
            return false;
        }
        final Object this$logisticCode = this.getLogisticCode();
        final Object other$logisticCode = other.getLogisticCode();
        if (this$logisticCode == null) {
            if (other$logisticCode == null) {
                return true;
            }
        }
        else if (this$logisticCode.equals(other$logisticCode)) {
            return true;
        }
        return false;
    }
    
    protected boolean canEqual(final Object other) {
        return other instanceof ExpressParam;
    }
    
    @Override
    public int hashCode() {
        final int PRIME = 59;
        int result = 1;
        final Object $orderCode = this.getOrderCode();
        result = result * 59 + (($orderCode == null) ? 43 : $orderCode.hashCode());
        final Object $shipperCode = this.getShipperCode();
        result = result * 59 + (($shipperCode == null) ? 43 : $shipperCode.hashCode());
        final Object $logisticCode = this.getLogisticCode();
        result = result * 59 + (($logisticCode == null) ? 43 : $logisticCode.hashCode());
        return result;
    }
    
    @Override
    public String toString() {
        return "ExpressParam(orderCode=" + this.getOrderCode() + ", shipperCode=" + this.getShipperCode() + ", logisticCode=" + this.getLogisticCode() + ")";
    }
}
